Skip to content

website/functions: CONTROL vocabulary gains code-only/unregistered - #1044

Merged
gHashTag merged 1 commit into
mainfrom
fn-control-unregistered
Oct 2, 2026
Merged

gHashTag merged 1 commit into
mainfrom
fn-control-unregistered

Conversation

@gHashTag

@gHashTag gHashTag commented Sep 17, 2026 •

Copy link
Copy Markdown
Owner

Companion of gHashTag/t27#4038 (spec of record) and gHashTag/999-multibots-telegraf#2502 (registry + manifest).

  • FN_CONTROLS += 'code-only/unregistered' with a comment saying what it means.
  • Test: a spec with that CONTROL and a manifest entry with the same control builds ok with no distance; a value outside the vocabulary is still a build problem.

Not in this PR: public/functions/manifest.json is still the 28-function vendored copy (no crm-proactive-sweep, five withdrawn still spec+code). Refresh it after #2502 merges, otherwise the five cards would show a CONTROL distance (warn) -- which would be the honest state until then.

Witness: node --test scripts/agents-from-specs.test.mjs 46 pass / 1 fail; the failing test 31 (tri tool spec card) fails on main before this change too.

{
  "version": 1,
  "head_sha": "8f24ab65a96315c56297506c59d62ed16d3ab348",
  "summary": "The website's function-card generator accepts code-only/unregistered as a CONTROL value, so a function withdrawn from registerFunctions.ts but still present in the bot tree can be described honestly without a build problem.",
  "changes": [
    "apps/website/scripts/agents-from-specs.mjs adds code-only/unregistered to FN_CONTROLS, with a comment saying the code exists but is withdrawn and not served.",
    "apps/website/scripts/agents-from-specs.test.mjs adds one test: a spec and a manifest entry that both say code-only/unregistered build with no problems, no differences and health ok, while an out-of-vocabulary value is still a build problem."
  ],
  "tests": [
    {
      "command": "node --test scripts/agents-from-specs.test.mjs",
      "result": "46 tests passed and 1 failed; the author states the failing test 31 (tri tool spec card) fails on main before this change too.",
      "status": "failed",
      "evidence": "Author-reported witness in this PR body; not rerun for this report."
    },
    {
      "command": "Website checks workflow, job checks, on head 8f24ab65",
      "result": "The job completed successfully on the PR head commit.",
      "status": "passed",
      "evidence": "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/gHashTag/trinity/actions/runs/35192340841 (that workflow does not run test:agents-specs)"
    }
  ],
  "limitations": [
    "public/functions/manifest.json is still the 28-function vendored copy; until it is refreshed after gHashTag/999-multibots-telegraf#2502, five cards would show a CONTROL distance warning.",
    "The pre-existing failure of test 31 in agents-from-specs.test.mjs is not addressed by this PR."
  ],
  "tags": [
    "website",
    "specs",
    "functions"
  ],
  "blog": {
    "title": "A withdrawn function gets its own CONTROL value",
    "summary": "Function cards on the site are generated from specs; a function whose code remains but is no longer registered now has a vocabulary value that says exactly that.",
    "outline": [
      "Five bot functions left registerFunctions.ts while their code stayed in the tree, and the card generator had no CONTROL value that described that state honestly.",
      "The vocabulary gains code-only/unregistered, matching the value the bot manifest uses, so spec and manifest agree and the generated card reports health ok without a distance.",
      "A value outside the vocabulary is still rejected as a build problem, and the vendored manifest must be refreshed separately before the five cards stop showing a warning."
    ]
  }
}

t27 specs/functions/README.md (gHashTag/t27#4038) added the value for the
five functions withdrawn from the bot's registerFunctions.ts on 2026-09-17
(999-multibots-telegraf#2502). The generator accepts it and the card shows no
distance when spec and manifest agree; a value outside the vocabulary is
still a build problem (test added). The vendored manifest is refreshed
separately once the bot PR lands.
@gHashTag

gHashTag commented Oct 2, 2026

Copy link
Copy Markdown
Owner Author

Reviewer bee Y: not merged. (1) Its own spec of record, gHashTag/t27#4038, is still OPEN (the 999 side, #2502, merged 2026-09-23), so the site would accept a CONTROL value the spec does not yet define. (2) Required status 'T27 work report' = FAILURE. (3) The body says test 31 of agents-from-specs fails on main too -- re-check on current main when rebasing. Merge after t27#4038 lands and the author adds the work report.

@gHashTag

gHashTag commented Oct 2, 2026

Copy link
Copy Markdown
Owner Author

bee review: not merged. Head 8f24ab6, MERGEABLE but BLOCKED: required T27 work report fails (no work-report block in the body, run 35192340719); claude-review also failed. Small diff (+20/-1), no credentials. Add the work report on the current head to unblock. Red on main for every PR (not counted against this one): ⚡ Brain Health Check, 📋 Brain Health Report.

@gHashTag gHashTag added the bee-reviewed A reviewer bee reviewed and verified this PR after its head commit; required to merge label Oct 2, 2026
@gHashTag

gHashTag commented Oct 2, 2026

Copy link
Copy Markdown
Owner Author

Bee review: evidence for #1044 at 8f24ab65a96315c56297506c59d62ed16d3ab348

  • Diff: read in full. It adds 'code-only/unregistered' to FN_CONTROLS in apps/website/scripts/agents-from-specs.mjs, plus one test. The test proves both that the new value round-trips with the manifest (health ok, no differences) and that an out-of-vocabulary value (withdrawn) is still a build problem.

  • The "1 test failing" in the report:

    • On current main (f3e89b89), node --test scripts/agents-from-specs.test.mjs gives 46/46 pass. The test-31 failure the author saw on 2026-09-17 was pre-existing and has since been fixed on main.
    • With this PR applied on main: 47/47 pass (46 + the new one).

    The PR causes no failure.

  • Generator: node scripts/agents-from-specs.mjs (the prebuild step) gives rc 0 with the PR applied, functions 28/28 typecheck ok.

  • Checks: T27 work report success.

    • claude-review (2026-09-17) is the review bot's own execution error ("result is_error:true"), not a finding about this diff.
    • pr-opened is a 401 on every PR (expired project token).
    • Brain Health is red on main (a stub).

Verdict: sound, isolated. Merging.

@t27-bees t27-bees Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bee review: see evidence comment

@gHashTag
gHashTag merged commit 62fd12f into main Oct 2, 2026
22 of 27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bee-reviewed A reviewer bee reviewed and verified this PR after its head commit; required to merge status:completed Done

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant